package twoD.IsoPfem.Plasticity.J2PlaneStress;

import twoD.IsoPfem.Plasticity.IHardeningLaw;

public class HughesKinematicHardeningLaw implements IHardeningLaw {
	private double Hbar_;
	private double theta_;

	public HughesKinematicHardeningLaw(double hbar_, double theta_) {
		Hbar_ = hbar_;
		this.theta_ = theta_;
	}

	@Override
	public double valueAt(double alpha_) {
		return (1 - theta_) * Hbar_ * alpha_;
	}

	@Override
	public double derivativeAt(double alpha_) {
		return (1 - theta_) * Hbar_;
	}
}
